package br.com.jmmarca.modelo.dao;

import br.com.jmmarca.modelo.entidade.Cidade;
import br.com.jmmarca.modelo.entidade.PessoaJuridica;
import br.com.jmmarca.modelo.generic.AbstractDAO;

public class PessoaJuridicaDAO extends AbstractDAO<PessoaJuridica> {

    private static PessoaJuridicaDAO instance;

    private PessoaJuridicaDAO() {
        super(PessoaJuridica.class);
    }

    public static PessoaJuridicaDAO getInstance() {
        if (instance == null) {
            instance = new PessoaJuridicaDAO();
        }
        return instance;
    }

    public PessoaJuridica encontrarPorNomeCep(String nome, String cep) {
        try {
            return (PessoaJuridica) getEntityManager().createQuery("Select c from PessoaJuridica c where c.nome = :nome and c.enderecos.cep = :cep").setParameter("nome", nome).setParameter("cep", cep).getSingleResult();
        } catch (Exception ex) {
            return null;
        }

    }
}
